package com.example.deepschool.repositories;

import com.example.deepschool.Model.CourseReview;
import org.apache.ibatis.annotations.Mapper;
import org.springframework.stereotype.Repository;

/**
 * 课程评价仓库接口，负责对课程评价数据的增删改查操作。
 */
@Repository
@Mapper
public interface CourseReviewRepository {
	
	/**
	 * 插入一条课程评价信息。
	 *
	 * @param courseReview 课程评价对象
	 * @return 插入成功的记录数
	 */
	Integer insert ( CourseReview courseReview );
	
	/**
	 * 根据评价ID删除一条课程评价信息。
	 *
	 * @param id 评价的ID
	 * @return 删除成功的记录数
	 */
	Integer delete ( Long id );
	
	/**
	 * 更新一条课程评价信息。
	 *
	 * @param courseReview 课程评价对象
	 * @return 更新成功的记录数
	 */
	Integer update ( CourseReview courseReview );
	
	/**
	 * 根据课程ID查询所有相关的课程评价信息。
	 *
	 * @param courseId 课程的ID
	 * @return 课程评价对象数组
	 */
	CourseReview[] select ( Long courseId );
	
}

